package com.aasa.siccosap.dao;

import java.sql.CallableStatement;
import java.sql.SQLException;
import java.text.DateFormat;
import java.text.SimpleDateFormat;

import javax.sql.DataSource;

import org.apache.log4j.Logger;

import oracle.jdbc.OracleTypes;

import com.aasa.siccosap.bean.ParametrosConsultaObra;

public class ConsultaObraBaseDAO extends accesoDao{

	static Logger logger = Logger.getLogger("ConsultaObraBaseDAO.class");
	public ConsultaObraBaseDAO()	throws accesoDaoException {
		super();
	}
	
	public ConsultaObraBaseDAO(DataSource dataSource) {
		super(dataSource);
	}
	
	
	CallableStatement configuraParametrosConsultaObra(ParametrosConsultaObra parametros) 
	throws SQLException {
		stmt.registerOutParameter(1, OracleTypes.VARCHAR);               
        stmt.registerOutParameter(2, OracleTypes.CURSOR);
    	
        stmt.setString(3, parametros.getStrPb_codigoCliente());
        stmt.setString(4, parametros.getStrPb_estado());
        stmt.setString(5, parametros.getStrPb_numeroObra());        
        java.sql.Date fechaInicioSQL = new java.sql.Date(parametros.getObjPb_fechaInicio().getTime());
        java.sql.Date fechaFinSQL = new java.sql.Date(parametros.getObjPb_fechaFin().getTime());
        stmt.setDate(6,fechaInicioSQL);	       
        stmt.setDate(7,fechaFinSQL);
        
        
        return(stmt);		
	}
	
	CallableStatement configuraParametrosConsultaSinObra(ParametrosConsultaObra parametros) 
	throws SQLException {
		stmt.registerOutParameter(1, OracleTypes.VARCHAR);               
        stmt.registerOutParameter(2, OracleTypes.CURSOR);
    	
        stmt.setString(3, parametros.getStrPb_codigoCliente());
        stmt.setString(4, parametros.getStrPb_estado());
        
        java.sql.Date fechaInicioSQL = new java.sql.Date(parametros.getObjPb_fechaInicio().getTime());
        java.sql.Date fechaFinSQL = new java.sql.Date(parametros.getObjPb_fechaFin().getTime());
        stmt.setDate(5,fechaInicioSQL);	       
        stmt.setDate(6,fechaFinSQL);
       
        return(stmt);		
	}
	
	CallableStatement configuraParametrosConsultaObraSinEstado(ParametrosConsultaObra parametros) 
	throws SQLException {
		stmt.registerOutParameter(1, OracleTypes.VARCHAR);               
        stmt.registerOutParameter(2, OracleTypes.CURSOR);
    	
        stmt.setString(3, parametros.getStrPb_codigoCliente());        
        stmt.setString(4, parametros.getStrPb_numeroObra());        
        java.sql.Date fechaInicioSQL = new java.sql.Date(parametros.getObjPb_fechaInicio().getTime());
        java.sql.Date fechaFinSQL = new java.sql.Date(parametros.getObjPb_fechaFin().getTime());
        stmt.setDate(5,fechaInicioSQL);	       
        stmt.setDate(6,fechaFinSQL);

        
        return(stmt);
		
	}
}
